package main

import (
	"fmt"
	"reflect"
)

func main() {
	var f float64 = 3.5
	t := reflect.TypeOf(f)
	fmt.Println("reflect Typeof(f): ", t)
	v := reflect.ValueOf(f)
	fmt.Println("reflect Valueof(f): ", v)
	fmt.Println("Typeof v: ", v.Type())
	fmt.Println("Kindof v: ", v.Kind())
	fmt.Println("Value of v: ", v.Float())
	fmt.Println("interface of v: ", v.Interface())
	fmt.Printf("value is %5.2e\n", v.Interface())
	y := v.Interface().(float64)
	fmt.Println("float v is: ", y)
}
